package models

import (
	"qld2devservice/utils"
	"time"
)

type QldChargeBox struct {
	Id           int64 `gorm:"primary_key"`
	BoxSn        string
	BoxNo        int64
	Name         string
	CabineId     int64
	CabinetSn    string
	Colpos       int64
	Rowpos       int64
	BoxOutletNum int64
	//0：空闲1：占用
	BoxStatus int64
	//0：在线(正常)1：损坏2：离线
	BoxCondition int64
	//仓门状态   舱门状态 0：关闭1：打开
	GateStatus int64
	//出租模式   0：未出租1：月租2：半年租3：年租
	RentMode int64
	//用户类型   0：小程序用户   1：卡用户
	UserType int64
	UserId   int64
	//0: 共享模式下收费（柜子占用费第一个24小时2块，超过24小时按5元/24小时收取占位费，电费按1元/2小时,2元/6小时 超过1度按每2元/度）
	//1：柜子月租模式下收费（月租费：20元每月，电费按1元/2小时,2元/6小时 超过1度按每2元/度）
	//2：月租模式下包含电费及柜子费（每个月40）
	PriceMode  int64
	PriceBoxId int64
	AddTime    time.Time
	Des        string
}

func GetQldChargeBoxsByBoxSn(boxSn string) ([]QldChargeBox, error) {
	var qldChargeBoxs []QldChargeBox
	//条件查询
	err := DB.Where("box_sn = ?", boxSn).Find(&qldChargeBoxs).Error
	if err != nil {
		newErr := utils.WrapError(err, "GetQldChargeBoxsBySnNum:1,数据库获取设备失败,boxSn="+boxSn)
		utils.MyPrint(utils.PRINT_ERROR, newErr.Error())
		return []QldChargeBox{}, newErr
	}
	return qldChargeBoxs, nil
}
